Conversation
|
@phlexbot cmake-fix |
|
Automatic cmake-format fixes pushed (commit c2b60b7). |
Codecov Report✅ All modified and coverable lines are covered by tests. @@ Coverage Diff @@
## main #410 +/- ##
==========================================
- Coverage 84.15% 84.08% -0.07%
==========================================
Files 127 127
Lines 3306 3306
Branches 562 562
==========================================
- Hits 2782 2780 -2
- Misses 328 329 +1
- Partials 196 197 +1
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
Adds an opt-in CMake configuration to profile build-time behavior (compile and link), helping developers identify expensive translation units and link steps during Phlex builds.
Changes:
- Introduces
ENABLE_BUILD_PROFILINGCMake option to wrap compile/link rules withcmake -E time. - Enables compile time tracing (
-ftime-trace) for Clang/GNU toolchains when profiling is enabled. - Enables additional LLD link tracing/statistics flags when LLD is detected.
| if(CMAKE_CXX_COMPILER_LINKER_ID STREQUAL "LLD") | ||
| message(STATUS "LLD detected (Phlex build) - Enabling tracing") | ||
| add_link_options("-Wl,--time-trace") | ||
| add_link_options("-Wl,--Map=phlex_link.map") |
There was a problem hiding this comment.
-Wl,--Map=phlex_link.map is added globally when build profiling is enabled. Since this project links multiple shared libraries/modules/executables in parallel, all link steps will try to write the same map file in the build directory, leading to races/overwrites (and potentially interleaved/corrupt output under parallel builds). Consider removing the global map generation, or emitting a per-target map file (e.g., via target-specific link options or a small helper that sets a unique map path per target).
| add_link_options("-Wl,--Map=phlex_link.map") |
c2b60b7 to
b0e703f
Compare
|
Review the full CodeQL report for details. |
No description provided.